perm filename GEM[0,BGB]15 blob
sn#115064 filedate 1974-08-08 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00014 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 {⊂CFJ≤G<NαGEOMETRIC MODELING THEORY.λ30I425,0P6JCFA} SECTION 1.
C00005 00003 ⊂1.1 Kinds of Geometric Models.⊃
C00007 00004 For a naive start, first consider a 3-D array in which each
C00011 00005
C00015 00006
C00018 00007
C00021 00008
C00024 00009
C00027 00010 {|λ10JA}
C00029 00011 ⊂1.2 Polyhedron Definitions and Properties.⊃
C00033 00012
C00036 00013 ⊂1.3 Camera, Light and Image Modeling.⊃
C00040 00014 ⊂1.4 Related Modeling Work.⊃
C00044 ENDMK
C⊗;
{⊂C;FJ;≤G;<N;αGEOMETRIC MODELING THEORY.;λ30;I425,0;P6;JC;FA} SECTION 1.
{JC;FD} GEOMETRIC MODELING THEORY.
{λ10;W250;JAFA}
1.0 Introduction to Geometric Modeling.
1.1 Kinds of Geometric Models.
1.2 Polyhedron Definitions and Properties.
1.3 Camera, Light and Image Modeling.
1.4 Related Modeling Work.
{λ30;W0;I950,0;JUFA}
⊂1.0 Introduction to Geometric Modeling.⊃
In the specific context of computer vision and graphics,
<geometric modeling> refers to constructing computer representations
of physical objects, cameras, images and light for the sake of
simulating their behavior. In Artificial Intelligence, a geometric
model is a kind of world model; ignoring subtleties, geometric world
modeling is distinguished from semantic and logical world modeling in
that it is quantitative and numerical rather than qualitative and
symbolic. The notion of a world model requires an external world
environment to be modeled, an internal computer environment to hold
the model, and a task performing entity to use the model. In
Geometry, modeling is a synthetic problem, like a construction with
ruler and straight edge, modeling problems require an algorithmic
solution rather than a proof. The word <geometric> is an appropriate
adjective to this kind of modeling in that it is a combination of the
greek words ≤gho≥ (world) and ≤metria≥ (measuring) which is exactly
the activity to be automated. {Q}
⊂1.1 Kinds of Geometric Models.⊃
The main problem of geometric modeling is to invent good
methods for representing arbitrary physical objects in a computer. A
physical object (for the moment) is something solid, rigid, opaque,
and macroscopic with a mathematically well behaved surface. Physical
objects include: the earth, chairs, roads, and plastic toy horses.
Such objects can be moved about in space with the restriction that
two objects can not occupy the same space at the same time. The
scope of the modeling problem can be appreciated by examining the
virtues and drawbacks of the models in box 1.1.
{|;λ10;JA}
BOX 1.1{JC} TEN KINDS OF GEOMETRIC MODELS.
{↓}
Space Oriented:
1. 3-D Space Array.
2. Recursive Cells.
3. 3-D Density Function.
4. 2-D Surface Functions.
5. Parametric Surface Functions.
{↑;W640;}
Object Oriented:
6. Manifolds.
7. Polyhedra.
8. Volume Elements.
9. Cross Sections.
10. Skeletons.
{|;λ30;JU}
For a naive start, first consider a 3-D array in which each
element indicates the presence or absence of solid matter in a cube
of space. Such a 3-D space array has the very desirable properties
of <spatial addressing> and <spatial uniqueness> in their most direct
and natural form. Spatial addressing refers to finding out what the
model contains within a distance R of a locus X,Y,Z; spatial
uniqueness refers to the property that physical solids can not occupy
the same space simultaneously. A first drawback of the space
array idea is illustrated by the apparently legal FORTRAN statement:
{≤J;JC} DIMENSION SPACE(100000,100000,100000)
\The problem with such a dimension statement is that no present day
computer memory is large enough to contain a 10≤15≥ element array.
Smaller space arrays can be useful but necessarily can not model
large volumes with high resolution. A further drawback of space
arrays is that objects and surfaces are not readily accessible as
entities; that is a space array lacks the desirable property of
<object coherence>. Coherence is the <sine qua non> of an object;
physical objects tend to hang together, to be self connected, in
short to be coherent.{≤G}
The space array idea can be salvaged by grouping blocks of
elements with the same value together, the addressing process
becomes more complicated but the overall memory required is reduced
and the two desired properties can be maintained. One way of doing
this (which has been discovered in several applications) is
<recursive cells>; the whole space is considered to be a cell; if the
space is not homogeneous then the first cell is divided into two (or
four or eight) sub cells and the criterion is applied again. This
technique allows the spatial sorting of objects when the object
models can be subdivided at each recursion without losing their
properties as objects.
Another salvageable naive modeling idea is that arbitrary
objects can be expressed as algebraic functions. In physics,
physical objects are frequently referred to as three dimensional
density functions W=≤r≥(X,Y,Z). Unfortunately such density functions
can not be written out for objects such as a typing chair or a
plastic horse without resorting to a programming language or an
extensive table (which is equivalent to the space array model).
Objects that are essentially 2-D can be approximated by a surface
function Z = F(X,Y). For example landscape may be represented by
geodetic maps in such a 2-D fashion.
By definition, a function is single valued; consequently the
description of even modestly complicated objects can not be expressed
directly as a single function of orthogonal rectilinear space
coordinates X, Y and Z. It is necessary either to adopt parametric
functions or to subdivide the object into portions that can be
described by simple functions of Cartesian variables. The former
course involves establishing a system of surface coordinates (U,V),
latitudes and longitudes, on the object in which functions for the
X,Y,Z locus of the object's surface are expressed. The advantage of
parametric functions is that extended arbitrary curve surfaces can be
expressed; some of the disadvantages are that parametric curves may
be self intersecting, they are not easy to modified locally, and the
functions become impractical before the shapes of mundane artifacts
can be achieved. Consequently parametric representations are combined
with object subdivision into portions, which is the latter course
called <segmentation>. The process of usefully segmenting an object
without destroying its coherence is a major problem requiring the
combination of spatial, functional and objective representations.
In passing from space oriented models to object oriented
models, observe that the same dichotomy appears at the frontiers of
physics where on the one hand the quantum field particle wave theory
of objects has yet to be reconciled with the general relativistic
theory of the space that contains the objects. Also in passing, I
wish to note that sophisticated representations of time is beyond the
scope of this discussion, although an advanced problem solving robot
will want to run world simulations along multiple time paths.
After existence in space and time, another general property
of physical objects is that they can be enclosed by an unbroken two
dimensional surface with an unabiguous inside and outside; which
touchs upon the mathematical topic (celebrated in song by Tom Lehrer)
of the algebraic topology of locally Euclidean transitions of
infinitely differentiable oriented Riemann manifolds. A <manifold>
is the mathematical abstraction of a surface; a <Riemann> manifold
has a metric function; an <oriented> manifold has a unambiguous
inside and an outside; the phrase <infinitely differentiable> can be
taken to mean that the surface is smooth and continuous; and the
phrase <locally Euclidean transitions> refers to the process of
segmenting the object into portions that can be approximated by
relatively simple functions. In particular, the 2-D Riemann
submanifold embedded in 3-D Euclidean space is the mathematical
object that comes closest to representing the shape and extent of the
surface of a physical object; such manifolds are conveniently
approached through the topology of surfaces which in turn is
computationally approached by means of polyhedra.
The topology of a 2-D Riemann submanifold embedded in a 3-D
Euclidean space is composed of three kinds of simplex: the 0-Simplex
(or vertex), the 1-Simplex (or edge), and the 2-Simplex (or
triangle). In topological analysis 2-D Riemann submanifolds may be
divided into faces, edges and vertices such that Eulers equations
F-E+V=2-2*H is satisfied (where F is the number of faces, E is the
number of edges, V is the number of vertices and H is the genus or
number of handles of the manifold); and such that the surface of the
manifold can be approximated by local functions over each face which
are Euclidean and which fit together smoothly at all the edges. By
introducing a sufficient (but finite) number of triangles the
manifold can be approximated to within an epsilon by constant
functions, yielding the geometric object called the <polyhedron>.
The main inherent advantage of a polyhedral model is its
coherent surface topology of faces, edges and vertices. Such a
surface can be subdivided without losing its coherence or the
coherence of the object. The disadvantages of polyhedra include the
lack of spatial uniqueness and spatial addressing which necessitates
computation to be done to detect and prevent spatial conflict and to
find the portions of an entity occupying a given volume. Another
feature of polyhedra (which can be an advantage or disadvantage) is
that all the (<Gaussian>) curvature happens suddenly at the vertices;
however by associating higher ordered approximation functions with
each face the model of a continous 2-D manifold can be made which is
a more conventional curved object representation. Nevertheless,
polyhedra are intrinsically a general curved object representation.
Returning to the survey, arbitrary objects can also be
described by listing a set of cross sections taken at a sufficient
number of cutting planes; this is how the shape of a ship's hull or
an airplane's wing is specified. Cross sections have the interesting
feature of good space modeling on one axis. Forsaking arbitrary
shaped objects, large classes of things can be described in terms of
a small set of basic volume elements. For example, [Roberts]* and
others have built models of familar objects using only rectangular
and triangular right prisms. Although, arbitrary solid polyhedra can
be constructed out of tetrahedrons (the 3-simplex); no significant
general modeling system exists using this potentially interesting
approach.
Skeletal models are based on abstracting an object into a
stick figure and by associating a diameter or set of cross sections
with the sticks. In particular, spine cross section models have been
pursued at Stanford by [Agin] and [Nervatia]. Spine cross section
models have the advantage of being able to express many objects in a
concise form suitable for recognition, however spine cross section
models can not be used directly for arbitrary shapes. Finally, it is
often useful to represent physical objects by weak geometric models
such as by a sets of spheres or sets of incoherent surface point
(that is unconnected). It is interesting to note that the <reality>
that the robot in Winograd's thesis [Winograd 71] could talk about,
was a blocks world based on a geometric model consisting only of
points, size of block, and a two page LISP subroutine named
FINDSPACE.{H4;I∂0,0;V∂0,1260;I∂30,0;
}* All square bracketed symbols are references listed in section 11.1
Beyond the particular kinds of geometric models, four general
purpose modeling techniques deserve special mention and isolation:
prototype instance structure, parts tree structure, resolution
limited structure, and procedure generated structure. Superficially,
the prototype instance structure is a memory efficiency technique
based on storing generalizations (prototypes) which can be bound to
specific cases (instances) as the occassion demands. Parts' tree
structure is a memory management technique of organizing the whole
universe of discourse as a tree data structure, where objects are
composed of sub objects. Resolution limited structure is an
excellent memory accessing technique, where depending on a specified
scale of interest different models are retrieved or even generated.
Finally, procedure generated structure concerns the trade-off between
storing and recomputing a model; namely recomputing the details of a
model as they are needed is a good idea for extending computational
resources. Now the danger to be avoided is to mistake the general
modeling techniques for the geometric model itself. Given a modeling
regime it can be improved by prototyping, parts-treeing,
resolution-limiting and procedural-generating; without a good basic
geometric model the general techniques amplify the background noise.
{|;λ10;JA}
BOX 1.2 {JC} DESIRABLE PROPERTIES FOR A GEOMETRIC MODEL.
{↓}
1. Spatial addressing.
2. Spatial uniqueness.
3. Object coherence.
4. Surface coherence.
5. Shape generality.
{↑;w500;}
6. Large extent with high resolution.
7. Readily modifiable.
8. Suitable for simulation.
9. Feasible memory and computation requirements.
10. Potential for automatic model acquistion.
{|;λ30;JU}
To the best of my knowledge, this survey is complete. As of
this year, 1974, there are no other significantly different kinds of
simple geometric models. The desirable properties that have turned up
in this survey are listed in box 1.2. The final desirable property is
that there be some hope that the computer can derive the model by
measurements it can make itself, although it is quite likely that one
model will be best for input and another model will be best for
simulation.{Q}
⊂1.2 Polyhedron Definitions and Properties.⊃
In computational modeling, definitions are not used
formally, but are rather employed piecemeal in terms of individual
properties which may or may not be present as polyhedra are generated
and processed. In particular, the properties listed in box 1.3 (given
in order of relevance) can be taken as a working definition of a
polyhedron for modeling a physical object.
{|;λ10;JA}
BOX 1.3 {JC} PROPERTIES OF POLYHEDRA.
{JA,FA↓}
1. Eulerian.
2. Surface Homogeneity.
3. Trivalence.
4. Face Planarity.
5. Solidity.
6. Simply Connected Faces.
7. Face Convexity.
8. Edge Aplanarity.
{↑;W600;}
Satisfies the Euler equation: F-E+V=2-2*H.
The polyhedron does not intersect itself.
All vertices and faces have three or more edges.
All the vertices of a face are coplanar.
The volume measure is non-zero, finite and positive.
Face perimeters have one loop of edges.
All the faces are convex.
Faces which share an edge are not coplanar.
{|;λ30;JU}
Topologically, the surface elements of a polyhedron form a
graph that satisfies Euler's F-E+V=2-2*H equation; where as before F,
E and V are the number of faces, edges and vertices of the
polyhedron; and where H is the number of holes in (or genus of) the
polyhedron. However, not all Eulerian graphs of faces, edges and
vertices correspond to the usual notion of a solid polyhedra without
the surface homogeneity and trivalence restrictions. Surface
homogeneity is the property that for any point on the polyhedron a
small enough sphere will cut from the surface a region homeomorphic
to a disk; this restriction implies that the surface can not
intersect itself and that edges can only belong to exactly two
different faces. The trivalence restriction insures that their are
no degenerate two edged faces or one edged vertices; although a two
edged vertex has a reasonible interpretation it is excluded by
trivalence for the sake of face-vertex duality and canonical form.
The last property, of aplanarity of faces with a common edge, is also
for the sake of canonical form and is sacrificed to face convexity
when necessary.
Geometrically, the faces of a polyhedron are planar, that is
lie in a plane. It is also frequently relevant to further restricted
the faces of a polyhedron to be convex, that is every possible line
segment between points of a face is contained within the face. To
assure solidity, the volume measure must be restricted to be finite
and positive; this restriction orients the surface to have an
exterior and an interior in the expected fashion. This restriction
excludes non-orientable structures such as Mobius bands and Klein
bottles for which the volume measure is undefined; however the
restriction will be slightly relaxed in chapter five in order to
exploit the concept of negative volumes.
The working definition was derived from more formal
definitions such the following which defines a polyhedron as a
special kind of a two dimensional manifold:
{λ7;W100,1160;}
\"A polyhedron is a connected, unbounded two-dimensional
manifold formed by a finite set of non-re-entrant, simply-connected
plane polygons."
{λ30;JR} - Coxeter, Regular Polytopes [Coxeter 1963].
{W0,1260;I∂20,0;
}\A <connected> manifold is an entity that is not disjoint and an
<unbounded> manifold is one with no cuts or gaps in its surface, that
is no boundaries. A polyhedral manifold is composed of planar,
simply-connected, non-re-entrant polygons; that is flat polygons with
a perimeter of edges that form one loop that doesn't intersect
itself. The polyhedron restrictions and properties are directed
towards modeling physical objects and are maintained by computational
mechanisms; consequently the word <polyhedron> comes to represent an
intent, rather than the fulfillment of any particular set of
defining properties. {Q}
⊂1.3 Camera, Light and Image Modeling.⊃
Common to both computer graphics and vision is the necessity
to model cameras, light and images so that pictures may be
synthesized or analysized.
The basic camera model has eight degrees of freedom, three
in location, three in orientation and two in projection:{λ10;
JA} Location: CX, CY, CZ Vector to camera lens center.
Orientation: WX, WY, WZ Orientation vector.
Projection: AR, FR Aspect Ratio and Focal Ratio.{λ30;JU}
\The orientation vector is explained in section 3.3, the perspective
projection is defined in section 3.4, the automatic derivation of the
camera parameters is the main topic of chapter nine. In modeling
light and physical objects, the most important and difficult property
to simulate is opacity. Techniques for modeling opaque objects are
presented in chapter four.
Finally, an image is a 2-D geometric object representing the
content of a rectangle from the pattern of light of light formed by a
thin lens on a television vidicon. The video image is the interface
to the external reality. Image modeling is analogous to 3-D geometric
modeling, since the same tradeoffs between spatial structure and
object structure arise. A 2-D image may be represented as a video
raster, which is a 2-D space array or as a set of feature loci which
is an object oriented description. Image structures and processors
for generating and comparing image representations are discussed in
chapters seven and eight. Together camera, light and image modeling
are the essential elements required to apply a geometric model to
computer vision. {Q}
⊂1.4 Related Modeling Work.⊃
Although geometric modeling per se has a long history and a
rich literature in mathematics, physics and engineering; very little
such modeling has been done using a computer at the level of detail
required for visual perception, a level which falls between the
generality typical in physics and mathematics and the specificality
typical of engineering. Computer science research work in geometric
modeling has already been cited in section 1.2; similar ideas are
available from computer graphics sources [Newman and Sproull]. In
computer graphics, the typical modeling paper invariably has a lot of
discussion about the theory and implementation of a node/link
modeling language (CORAL, LEAP, ASP, and others) and very little
material about how the actual geometric modeling is to be done in the
given language. In mathematics, I have found the work of the
Canadian geometer Coxeter,[Coxeter 61] and [Coxeter 63] to be my best
source of ideas relevant to modeling; along with the observations
from recreational mathematicians [Gardner 59], [Gardner 61] and
[Stewart]; and geometry textbook authors [Eves], [Snyder] and
[Graustein]. The translation of Hilbert's book [Hilbert] presenting
Geometry for the non-mathematician is also a good source of ideas.
With the exception of general relativistic gravitation theory
[Misner, Thorne and Wheeler] geometric modeling is not at the
frontier physics research; although classical mechanics is applicable
to some aspects of rotation and tensors [Goldstein], [Feynman] and
[Symon]. In engineering, books on geodetic surveying, mechanical
drawing and architectural drawing contain ideas relevant to modeling
particular classes of objects; selected almost at random, I have
used [Luzadder] and [Muller] as introductions to engineering and
architectural drawing respectively.